1. Field of the Invention
The present invention generally relates to an electro-optical reader for reading indicia, especially two-dimensional indicia, by image capture and, more particularly, for detecting relative motion between the indicia and the reader prior to reading of the indicia to insure that the indicia is located entirely within a field of view of the reader, thereby improving reader performance, especially when rapid relative motion is performed between the indicia and the reader.
2. Description of the Related Art
Flat bed laser readers, also known as horizontal slot scanners, have been used to electro-optically read one-dimensional bar code symbols, particularly of the Universal Product Code (UPC) type, at a point-of-transaction workstation in supermarkets, warehouse clubs, department stores, and other kinds of retailers for many years. As exemplified by U.S. Pat. Nos. 5,059,779; 5,124,539 and 5,200,599, a single, horizontal window is set flush with, and built into, a horizontal countertop of the workstation. Products to be purchased bear an identifying symbol and are typically slid or swiped across the horizontal window through which a multitude of scan lines is projected in a generally upwards direction. When at least one of the scan lines sweeps over a symbol associated with a product, the symbol is processed and read.
The multitude of scan lines is generated by scan pattern generator which includes a laser for emitting a laser beam at a mirrored component mounted on a shaft for rotation by a motor about an axis. A plurality of stationary mirrors is arranged about the axis. As the mirrored component turns, the laser beam is successively reflected onto the stationary mirrors for reflection therefrom through the horizontal window as a scan pattern of the scan lines.
Instead of, or in addition to, a horizontal slot scanner, it is known to provide vertical slot scanner which is typically a portable reader placed on the countertop such that its window is generally vertical and faces an operator at the workstation. The generally vertical window is oriented perpendicularly to the horizontal window, or is slightly rearwardly inclined. The scan pattern generator within the workstation also projects the multitude of scan lines in a generally outward direction through the vertical window toward the operator. The generator for the vertical window can be the same as or different from the generator for the horizontal window. The operator slides or swipes the products past either window from right to left, or from left to right, in a “swipe” mode. Alternatively, the operator merely presents the symbol on the product to the center of either window in a “presentation” mode. The choice depends on operator preference or on the layout of the workstation.
Each product must be oriented by the operator with the symbol facing away from the operator and directly towards either window. Hence, the operator cannot see exactly where the symbol is during scanning. In typical “blind-aiming” usage, it is not uncommon for the operator to repeatedly swipe or present a single symbol several times before the symbol is successfully read, thereby slowing down transaction processing and reducing productivity.
The blind-aiming of the symbol is made more difficult because the position and orientation of the symbol are variable. The symbol may be located low or high, or right to left, on the product, or anywhere in between. The symbol may be oriented in a “picket fence” orientation in which the elongated parallel bars of the one-dimensional UPC symbol are vertical, or in a “ladder” orientation in which the symbol bars are horizontal, or at any orientation angle in between.
As advantageous as these point-of-transaction workstations are in processing transactions involving products associated with one-dimensional symbols each having a row of bars and spaces spaced apart along one direction, the workstations cannot process two-dimensional symbols, such as Code 49 which introduced the concept of vertically stacking a plurality of rows of bar and space patterns in a single symbol. The structure of Code 49 is described in U.S. Pat. No. 4,794,239. Another two-dimensional code structure for increasing the amount of data that can be represented or stored on a given amount of surface area is known as PDF417 and is described in U.S. Pat. No. 5,304,786. Such two-dimensional symbols are generally read by electro-optical readers operative for projecting a laser beam as a raster of scan lines, each line extending in one direction over a respective row, and all the lines being spaced apart along a height of the two-dimensional symbol in a generally perpendicular direction.
Both one- and two-dimensional symbols can also be read by employing solid-state imagers. For example, an image sensor device may be employed which has a one- or two-dimensional array of cells or photosensors which correspond to image elements or pixels in a field of view of the device. Such an image sensor device may include a one- or two-dimensional charge coupled device (CCD) or a complementary metal oxide semiconductor (CMOS) device and associated circuits for producing electronic signals corresponding to a one- or two-dimensional array of pixel information for a field of view.
It is therefore known to use a solid-state device for capturing a monochrome image of a symbol as, for example, disclosed in U.S. Pat. No. 5,703,349. It is also known to use a solid-state device with multiple buried channels for capturing a full color image of a target as, for example, disclosed in U.S. Pat. No. 4,613,895. It is common to provide a two-dimensional CCD with a 640×480 resolution commonly found in VGA monitors, although other resolution sizes are possible.
However, the known point-of-transaction workstations do not generate raster scans capable of reading two-dimensional symbols, nor do they utilize solid-state imagers for capturing images of two-dimensional targets, especially two-dimensional symbols required to be electro-optically read. To acquire a target image, a solid-state imager, for example as embodied in a consumer digital camera, must be held in a stationary position relative to the target. Only when a solid-state imager is held in a fixed position relative to a target symbol can an image of the symbol be reliably captured and decoded, with the data encoded in the symbol being sent to a host for processing. In the context of a point-of-transaction workstation where the operator swipes the symbol at various swipe speeds past the window, sometimes once, sometimes several times, and where the operator presents the symbol with an additional component of movement toward and away from a window, and in some cases where the symbols are transported at various speeds on a moving conveyor past a window, and in still other cases where a handheld reader having a window is moved at various speeds relative to the symbol, the image of the symbol is blurred due to the relative motion between the symbol and the imager and, as a result, the image cannot be reliably and successfully decoded and read.
By way of numerical example, commonly available imagers operate at a video or frame rate of 30 frames per second. Thus, the time to read an image out of the imager is about 33 milliseconds. At a swipe speed of 50 inches per second, a symbol travels approximately 1.5 inches in 30 milliseconds. The field of view at the near end of a working range of the reader could be about 2 inches or less in width. Therefore, at swipe speeds greater than 50 inches per second, the symbol can enter and exit the field of view in a time period less than 33 milliseconds, thereby making it impossible to successfully read the symbol. In effect, the symbol may be moved through the field of view so quickly that a conventional imager does not have sufficient time to obtain even one complete image of the symbol.